//
//  HHPHTTPRequestManager.h
//  HHPHTTPRequest
//
//  Created by 韩红坡 on 2016/12/14.
//  Copyright © 2016年 韩红坡. All rights reserved.
//

#import <Foundation/Foundation.h>

#import "HHPHTTPRequest.h"
#import "HHPHTTPRequestOptions.h"
#import "HHPHTTPChainRequest.h"

@interface HHPHTTPRequestManager : NSObject

/** 不能为空 */
@property (nonatomic, strong) AFHTTPSessionManager *sessionManager;
/** 配置默认的请求选项 */
@property (nonatomic, strong) void (^defaultOptionsBlock)(HHPHTTPRequestOptions *options);

/** 默认的单例 */
+ (instancetype)manager;

/**
 * 单个app中可能需要多个本类的单例
 * 获取指定名称的单例，不存在会自动创建
 * name : 单例名称
 */
+ (instancetype)managerWithName:(NSString *)name;

/**
 * 设置默认的请求选项
 * defaultOptionsBlock : 生成默认配置
 */
- (void)setDefaultOptionsBlock:(void (^)(HHPHTTPRequestOptions *))defaultOptionsBlock;

/** 创建一个请求 */
- (HHPHTTPRequest *)createRequest;

@end
